home *** CD-ROM | disk | FTP | other *** search
/ TeX 1995 July / TeX CD-ROM July 1995 (Disc 1)(Walnut Creek)(1995).ISO / macros / latex209 / contrib / jns / jns.cmm < prev    next >
Text File  |  1993-01-11  |  23KB  |  557 lines

  1. % This is JNS.CMM the plain TeX macro package
  2. % (CM version) from Springer-Verlag
  3. % for the Journal of Nonlinear Science
  4. % version of 16 July 1990
  5. \font \tafontt                = cmbx10 scaled\magstep2
  6. \font \tafontss               = cmbx5  scaled\magstep2
  7. \font \sixbf                  = cmbx6
  8. \font \tafonts                = cmbx7  scaled\magstep2
  9. \font \eightbf                = cmbx8
  10. \font \sixi                   = cmmi6
  11. \font \eighti                 = cmmi8
  12. \font \tams                   = cmmib10
  13. \font \tbmss                  = cmmib10 scaled 600
  14. \font \tamss                  = cmmib10 scaled 700
  15. \font \tbms                   = cmmib10 scaled 833
  16. \font \tamt                   = cmmib10 scaled\magstep2
  17. \font \smallescriptscriptfont = cmr5
  18. \font \smalletextfont         = cmr5 at 10pt
  19. \font \smallescriptfont       = cmr5 at 7pt
  20. \font \sixrm                  = cmr6
  21. \font \eightrm                = cmr8
  22. \font \tensans                = cmss10
  23. \font \fivesans               = cmss10 at 5pt
  24. \font \sixsans                = cmss10 at 6pt
  25. \font \sevensans              = cmss10 at 7pt
  26. \font \eightsans              = cmss10 at 8pt
  27. \font \tast                   = cmsy10 scaled\magstep2
  28. \font \tasss                  = cmsy5  scaled\magstep2
  29. \font \sixsy                  = cmsy6
  30. \font \tass                   = cmsy7  scaled\magstep2
  31. \font \eightsy                = cmsy8
  32. \font \eightit                = cmti8
  33. \font \eighttt                = cmtt8
  34. %-----------------------------------------------------------------------
  35. \magnification=\magstep0
  36. \hsize=12.2cm
  37. \vsize=19.4cm
  38. \hfuzz=2pt
  39. \tolerance=500
  40. \abovedisplayskip=3 mm plus6pt minus 4pt
  41. \belowdisplayskip=3 mm plus6pt minus 4pt
  42. \abovedisplayshortskip=0mm plus6pt minus 2pt
  43. \belowdisplayshortskip=2 mm plus4pt minus 4pt
  44. \predisplaypenalty=0
  45. \clubpenalty=10000
  46. \widowpenalty=10000
  47. \frenchspacing
  48. \newdimen\oldparindent\oldparindent=1.5em
  49. \parindent=1.5em
  50. %-----------------------------------------------------------------------
  51. \def\getsto{\mathrel{\mathchoice {\vcenter{\offinterlineskip
  52. \halign{\hfil
  53. $\displaystyle##$\hfil\cr\gets\cr\to\cr}}}
  54. {\vcenter{\offinterlineskip\halign{\hfil$\textstyle##$\hfil\cr\gets
  55. \cr\to\cr}}}
  56. {\vcenter{\offinterlineskip\halign{\hfil$\scriptstyle##$\hfil\cr\gets
  57. \cr\to\cr}}}
  58. {\vcenter{\offinterlineskip\halign{\hfil$\scriptscriptstyle##$\hfil\cr
  59. \gets\cr\to\cr}}}}}
  60. \def\lid{\mathrel{\mathchoice {\vcenter{\offinterlineskip\halign{\hfil
  61. $\displaystyle##$\hfil\cr<\cr\noalign{\vskip1.2pt}=\cr}}}
  62. {\vcenter{\offinterlineskip\halign{\hfil$\textstyle##$\hfil\cr<\cr
  63. \noalign{\vskip1.2pt}=\cr}}}
  64. {\vcenter{\offinterlineskip\halign{\hfil$\scriptstyle##$\hfil\cr<\cr
  65. \noalign{\vskip1pt}=\cr}}}
  66. {\vcenter{\offinterlineskip\halign{\hfil$\scriptscriptstyle##$\hfil\cr
  67. <\cr
  68. \noalign{\vskip0.9pt}=\cr}}}}}
  69. \def\gid{\mathrel{\mathchoice {\vcenter{\offinterlineskip\halign{\hfil
  70. $\displaystyle##$\hfil\cr>\cr\noalign{\vskip1.2pt}=\cr}}}
  71. {\vcenter{\offinterlineskip\halign{\hfil$\textstyle##$\hfil\cr>\cr
  72. \noalign{\vskip1.2pt}=\cr}}}
  73. {\vcenter{\offinterlineskip\halign{\hfil$\scriptstyle##$\hfil\cr>\cr
  74. \noalign{\vskip1pt}=\cr}}}
  75. {\vcenter{\offinterlineskip\halign{\hfil$\scriptscriptstyle##$\hfil\cr
  76. >\cr
  77. \noalign{\vskip0.9pt}=\cr}}}}}
  78. \def\grole{\mathrel{\mathchoice {\vcenter{\offinterlineskip
  79. \halign{\hfil
  80. $\displaystyle##$\hfil\cr>\cr\noalign{\vskip-1pt}<\cr}}}
  81. {\vcenter{\offinterlineskip\halign{\hfil$\textstyle##$\hfil\cr
  82. >\cr\noalign{\vskip-1pt}<\cr}}}
  83. {\vcenter{\offinterlineskip\halign{\hfil$\scriptstyle##$\hfil\cr
  84. >\cr\noalign{\vskip-0.8pt}<\cr}}}
  85. {\vcenter{\offinterlineskip\halign{\hfil$\scriptscriptstyle##$\hfil\cr
  86. >\cr\noalign{\vskip-0.3pt}<\cr}}}}}
  87. \def\bbbr{{\rm I\!R}} %reelle Zahlen
  88. \def\bbbm{{\rm I\!M}}
  89. \def\bbbn{{\rm I\!N}} %natuerliche Zahlen
  90. \def\bbbf{{\rm I\!F}}
  91. \def\bbbh{{\rm I\!H}}
  92. \def\bbbk{{\rm I\!K}}
  93. \def\bbbp{{\rm I\!P}}
  94. \def\bbbone{{\mathchoice {\rm 1\mskip-4mu l} {\rm 1\mskip-4mu l}
  95. {\rm 1\mskip-4.5mu l} {\rm 1\mskip-5mu l}}}
  96. \def\bbbc{{\mathchoice {\setbox0=\hbox{$\displaystyle\rm C$}\hbox{\hbox
  97. to0pt{\kern0.4\wd0\vrule height0.9\ht0\hss}\box0}}
  98. {\setbox0=\hbox{$\textstyle\rm C$}\hbox{\hbox
  99. to0pt{\kern0.4\wd0\vrule height0.9\ht0\hss}\box0}}
  100. {\setbox0=\hbox{$\scriptstyle\rm C$}\hbox{\hbox
  101. to0pt{\kern0.4\wd0\vrule height0.9\ht0\hss}\box0}}
  102. {\setbox0=\hbox{$\scriptscriptstyle\rm C$}\hbox{\hbox
  103. to0pt{\kern0.4\wd0\vrule height0.9\ht0\hss}\box0}}}}
  104. \def\bbbe{{\mathchoice {\setbox0=\hbox{\smalletextfont e}\hbox{\raise
  105. 0.1\ht0\hbox to0pt{\kern0.4\wd0\vrule width0.3pt height0.7\ht0\hss}\box0}}
  106. {\setbox0=\hbox{\smalletextfont e}\hbox{\raise
  107. 0.1\ht0\hbox to0pt{\kern0.4\wd0\vrule width0.3pt height0.7\ht0\hss}\box0}}
  108. {\setbox0=\hbox{\smallescriptfont e}\hbox{\raise
  109. 0.1\ht0\hbox to0pt{\kern0.5\wd0\vrule width0.2pt height0.7\ht0\hss}\box0}}
  110. {\setbox0=\hbox{\smallescriptscriptfont e}\hbox{\raise
  111. 0.1\ht0\hbox to0pt{\kern0.4\wd0\vrule width0.2pt height0.7\ht0\hss}\box0}}}}
  112. \def\bbbq{{\mathchoice {\setbox0=\hbox{$\displaystyle\rm Q$}\hbox{\raise
  113. 0.15\ht0\hbox to0pt{\kern0.4\wd0\vrule height0.8\ht0\hss}\box0}}
  114. {\setbox0=\hbox{$\textstyle\rm Q$}\hbox{\raise
  115. 0.15\ht0\hbox to0pt{\kern0.4\wd0\vrule height0.8\ht0\hss}\box0}}
  116. {\setbox0=\hbox{$\scriptstyle\rm Q$}\hbox{\raise
  117. 0.15\ht0\hbox to0pt{\kern0.4\wd0\vrule height0.7\ht0\hss}\box0}}
  118. {\setbox0=\hbox{$\scriptscriptstyle\rm Q$}\hbox{\raise
  119. 0.15\ht0\hbox to0pt{\kern0.4\wd0\vrule height0.7\ht0\hss}\box0}}}}
  120. \def\bbbt{{\mathchoice {\setbox0=\hbox{$\displaystyle\rm
  121. T$}\hbox{\hbox to0pt{\kern0.3\wd0\vrule height0.9\ht0\hss}\box0}}
  122. {\setbox0=\hbox{$\textstyle\rm T$}\hbox{\hbox
  123. to0pt{\kern0.3\wd0\vrule height0.9\ht0\hss}\box0}}
  124. {\setbox0=\hbox{$\scriptstyle\rm T$}\hbox{\hbox
  125. to0pt{\kern0.3\wd0\vrule height0.9\ht0\hss}\box0}}
  126. {\setbox0=\hbox{$\scriptscriptstyle\rm T$}\hbox{\hbox
  127. to0pt{\kern0.3\wd0\vrule height0.9\ht0\hss}\box0}}}}
  128. \def\bbbs{{\mathchoice
  129. {\setbox0=\hbox{$\displaystyle     \rm S$}\hbox{\raise0.5\ht0\hbox
  130. to0pt{\kern0.35\wd0\vrule height0.45\ht0\hss}\hbox
  131. to0pt{\kern0.55\wd0\vrule height0.5\ht0\hss}\box0}}
  132. {\setbox0=\hbox{$\textstyle        \rm S$}\hbox{\raise0.5\ht0\hbox
  133. to0pt{\kern0.35\wd0\vrule height0.45\ht0\hss}\hbox
  134. to0pt{\kern0.55\wd0\vrule height0.5\ht0\hss}\box0}}
  135. {\setbox0=\hbox{$\scriptstyle      \rm S$}\hbox{\raise0.5\ht0\hbox
  136. to0pt{\kern0.35\wd0\vrule height0.45\ht0\hss}\raise0.05\ht0\hbox
  137. to0pt{\kern0.5\wd0\vrule height0.45\ht0\hss}\box0}}
  138. {\setbox0=\hbox{$\scriptscriptstyle\rm S$}\hbox{\raise0.5\ht0\hbox
  139. to0pt{\kern0.4\wd0\vrule height0.45\ht0\hss}\raise0.05\ht0\hbox
  140. to0pt{\kern0.55\wd0\vrule height0.45\ht0\hss}\box0}}}}
  141. \def\bbbz{{\mathchoice {\hbox{$\sans\textstyle Z\kern-0.4em Z$}}
  142. {\hbox{$\sans\textstyle Z\kern-0.4em Z$}}
  143. {\hbox{$\sans\scriptstyle Z\kern-0.3em Z$}}
  144. {\hbox{$\sans\scriptscriptstyle Z\kern-0.2em Z$}}}}
  145. %--------------------------------------------------------------------------
  146. % petit-fonts
  147. \skewchar\eighti='177 \skewchar\sixi='177
  148. \skewchar\eightsy='60 \skewchar\sixsy='60
  149. \hyphenchar\eighttt=-1
  150. \def\newline{\hfil\break}%
  151. %--------------------------------------------------------------------------
  152. \catcode`@=11
  153. \def\folio{\ifnum\pageno<\z@
  154. \uppercase\expandafter{\romannumeral-\pageno}%
  155. \else\number\pageno\fi}
  156. \catcode`@=12 % at signs are no longer letters
  157. %-------------------------------------------------------
  158. % Definition der versal griechischen Buchstaben
  159. %===============================================================================
  160.   \mathchardef\Gamma="0100
  161.   \mathchardef\Delta="0101
  162.   \mathchardef\Theta="0102
  163.   \mathchardef\Lambda="0103
  164.   \mathchardef\Xi="0104
  165.   \mathchardef\Pi="0105
  166.   \mathchardef\Sigma="0106
  167.   \mathchardef\Upsilon="0107
  168.   \mathchardef\Phi="0108
  169.   \mathchardef\Psi="0109
  170.   \mathchardef\Omega="010A
  171. %-------------------------------------------------------------------------------
  172. \def\squareforqed{\hbox{\rlap{$\sqcap$}$\sqcup$}}
  173. \def\qed{\ifmmode\squareforqed\else{\unskip\nobreak\hfil
  174. \penalty50\hskip1em\null\nobreak\hfil\squareforqed
  175. \parfillskip=0pt\finalhyphendemerits=0\endgraf}\fi}
  176. %---------------------------------------------------------------------------
  177. \newfam\sansfam
  178. \textfont\sansfam=\tensans\scriptfont\sansfam=\sevensans
  179. \scriptscriptfont\sansfam=\fivesans
  180. \def\sans{\fam\sansfam\tensans}
  181. %---------------------------------------------------------------------------
  182. \def\stackfigbox{\if
  183. Y\FIG\global\setbox\figbox=\vbox{\unvbox\figbox\box1}%
  184. \else\global\setbox\figbox=\vbox{\box1}\global\let\FIG=Y\fi}
  185. %
  186. \def\placefigure{\dimen0=\ht1\advance\dimen0by\dp1
  187. \advance\dimen0by5\baselineskip
  188. \advance\dimen0by0.4true cm
  189. \ifdim\dimen0>\vsize\pageinsert\box1\vfill\endinsert
  190. \else%keine seitenhohe Abbildung
  191. \if Y\FIG\stackfigbox\else
  192. \dimen0=\pagetotal\ifdim\dimen0<\pagegoal%aktuelle Seite ist noch nicht voll
  193. \advance\dimen0by\ht1\advance\dimen0by\dp1\advance\dimen0by1.7true cm
  194. \ifdim\dimen0>\pagegoal\stackfigbox
  195. \else\box1\vskip7true mm\fi
  196. \else\box1\vskip7true mm\fi\fi\fi\let\firstleg=Y}
  197. %
  198. % Abbildungen
  199. \def\begfig#1cm#2\endfig{\par
  200. \setbox1=\vbox{\dimen0=#1true cm\advance\dimen0
  201. by1true cm\kern\dimen0\vskip-.8333\baselineskip#2}\placefigure}
  202. %
  203. \def\begdoublefig#1cm #2 #3 \enddoublefig{\begfig#1cm%
  204. \line{\vtop{\hsize=0.46\hsize#2}\hfill
  205. \vtop{\hsize=0.46\hsize#3}}\endfig}
  206. %-------------------------------------------------------------------
  207. \let\firstleg=Y
  208. % Abbildungslegenden
  209. % Falls Text kleiner als eine volle Zeile, zentriert.
  210. \def\figure#1#2{\if Y\firstleg\vskip1true cm\else\vskip1.7true mm\fi
  211. \let\firstleg=N\setbox0=\vbox{\noindent\petit{\bf
  212. Fig.\ts#1\unskip.\ }\ignorespaces #2\smallskip
  213. \count255=0\global\advance\count255by\prevgraf}%
  214. \ifnum\count255>1\box0\else
  215. \centerline{\petit{\bf Fig.\ts#1\unskip.\
  216. }\ignorespaces#2}\smallskip\fi}
  217. %-----------------------------------------------------------------
  218. % Tabellenkoepfe
  219. \def\tabcap#1#2{\smallskip\vbox{\noindent\petit{\bf Table\ts#1\unskip.\
  220. }\ignorespaces #2\medskip}}
  221. %-------------------------------------------------------------------
  222. \def\begtab#1cm#2\endtab{\par
  223.    \ifvoid\topins\midinsert\medskip\vbox{#2\kern#1true cm}\endinsert
  224.    \else\topinsert\vbox{#2\kern#1true cm}\endinsert\fi}
  225. %-------------------------------------------------------------------
  226. \def\begpet{\vskip6pt\bgroup\petit}
  227. \def\endpet{\vskip6pt\egroup}
  228. %-------------------------------------------------------------------
  229. % Referenzen
  230. \newdimen\refindent
  231. \newlinechar=`\|
  232. \def\begref#1#2{\titlea{}{#1}%
  233. \bgroup\petit
  234. \setbox0=\hbox{#2\enspace}\refindent=\wd0\relax
  235. \if!#2!\else
  236. \ifdim\refindent>0.5em\else
  237. \message{|Something may be wrong with your references;}%
  238. \message{probably you missed the second argument of \string\begref.}%
  239. \fi\fi}
  240. \def\ref{\goodbreak
  241. \hangindent\oldparindent\hangafter=1
  242. \noindent\ignorespaces}
  243. \def\refno#1{\goodbreak
  244. \setbox0=\hbox{#1\enspace}\ifdim\refindent<\wd0\relax
  245. \message{|Your reference `#1' is wider than you pretended in using
  246. \string\begref.}\fi
  247. \hangindent\refindent\hangafter=1
  248. \noindent\kern\refindent\llap{#1\enspace}\ignorespaces}
  249. \def\refmark#1{\goodbreak
  250. \setbox0=\hbox{#1\enspace}\ifdim\refindent<\wd0\relax
  251. \message{|Your reference `#1' is wider than you pretended in using
  252. \string\begref.}\fi
  253. \hangindent\refindent\hangafter=1
  254. \noindent\hbox to\refindent{#1\hss}\ignorespaces}
  255. \def\endref{\goodbreak\endpet}% Ende der Referenzen
  256. %-------------------------------------------------------------------
  257. \def\vec#1{{\textfont1=\tenbf\scriptfont1=\sevenbf
  258. \textfont0=\tenbf\scriptfont0=\sevenbf
  259. \mathchoice{\hbox{$\displaystyle#1$}}{\hbox{$\textstyle#1$}}
  260. {\hbox{$\scriptstyle#1$}}{\hbox{$\scriptscriptstyle#1$}}}}
  261. %---------------------------------------------------------------------
  262. \def\petit{\def\rm{\fam0\eightrm}%
  263. \textfont0=\eightrm \scriptfont0=\sixrm \scriptscriptfont0=\fiverm
  264.  \textfont1=\eighti \scriptfont1=\sixi \scriptscriptfont1=\fivei
  265.  \textfont2=\eightsy \scriptfont2=\sixsy \scriptscriptfont2=\fivesy
  266.  \def\it{\fam\itfam\eightit}%
  267.  \textfont\itfam=\eightit
  268.  \def\bf{\fam\bffam\eightbf}%
  269.  \textfont\bffam=\eightbf \scriptfont\bffam=\sixbf
  270.  \scriptscriptfont\bffam=\fivebf
  271.  \def\sans{\fam\sansfam\eightsans}%
  272.  \textfont\sansfam=\eightsans \scriptfont\sansfam=\sixsans
  273.  \scriptscriptfont\sansfam=\fivesans
  274.  \def\tt{\fam\ttfam\eighttt}%
  275.  \textfont\ttfam=\eighttt
  276.  \normalbaselineskip=10pt
  277.  \setbox\strutbox=\hbox{\vrule height7pt depth2pt width0pt}%
  278.  \normalbaselines\rm
  279. \def\vec##1{{\textfont1=\tbms\scriptfont1=\tbmss
  280. \textfont0=\eightbf\scriptfont0=\sixbf
  281. \mathchoice{\hbox{$\displaystyle##1$}}{\hbox{$\textstyle##1$}}
  282. {\hbox{$\scriptstyle##1$}}{\hbox{$\scriptscriptstyle##1$}}}}}
  283. %-------------------------------------------------------------------
  284. \nopagenumbers
  285. %
  286. % Der Schalter \header gibt an, ob ein "running head" gedruckt werden
  287. % soll; wenn er nicht auf "N" steht kommt ein solcher.
  288. \let\header=Y
  289. \let\FIG=N
  290. \newbox\figbox
  291. \output={\if N\header\headline={\hfil}\fi\plainoutput
  292. \global\let\header=Y
  293. \if Y\FIG\topinsert\unvbox\figbox\endinsert\global\let\FIG=N\fi}
  294. %------------------------------------------------------
  295. \let\lasttitle=N
  296. %------------------------------------------------------
  297. % "running head"
  298. \headline={\petit\def\newline{ }\def\fonote#1{}\ifodd\pageno
  299. \rightheadline\else\leftheadline\fi}
  300. \def\rightheadline{Missing MAINTITLE\hfil\hbox to2.5true
  301. cc{\hfil\folio}}
  302. \def\leftheadline{\hbox to2.5true cc{\folio\hfil}\hfil Missing name(s)
  303. of the author(s)}
  304. \nopagenumbers
  305. %
  306. \let\header=Y
  307. %------------------------------------------------------
  308. \def\Logo{\setbox254=\hbox{ THE JOURNAL OF }%
  309. \vbox{\hrule\hbox{\vrule\vbox{\kern3pt
  310. \copy254
  311. \hbox to\wd254{\hfil NONLINEAR\hfil}
  312. \hbox to\wd254{\hfil SCIENCE\hfil}
  313. \hbox to\wd254{\hfil\number\day.\number\month.\number\year\hfil}
  314. \kern3pt}\vrule}\hrule}}
  315. %------------------------------------------------------
  316. \def\makelogo{\hbox to\hsize{\hfil
  317. \Logo}\vskip2.1cm}
  318. %------------------------------------------------------
  319.  \def\maintitle#1{\vfill\eject
  320.  \makelogo
  321.  \let\header=N\bgroup
  322.  \textfont0=\tafontt \scriptfont0=\tafonts \scriptscriptfont0=\tafontss
  323.  \textfont1=\tamt \scriptfont1=\tams \scriptscriptfont1=\tamss
  324.  \textfont2=\tast \scriptfont2=\tass \scriptscriptfont2=\tasss
  325.  \par\baselineskip=16pt
  326.      \lineskip=0pt
  327.      \tafontt
  328.      \raggedright
  329.      \pretolerance=10000
  330.      \noindent
  331.      \ignorespaces#1
  332.      \vskip10.8pt\egroup
  333.      \nobreak
  334.      \parindent=0pt
  335.      \everypar={\global\parindent=1.5em
  336.      \global\let\lasttitle=N\global\everypar={}}%
  337.      \global\let\lasttitle=A%
  338.      \setbox0=\hbox{\petit\def\newline{ }\def\fonote##1{}\kern2.5true
  339.      cc\ignorespaces#1}\ifdim\wd0>\hsize
  340.      \message{Your MAINTITLE exceeds the headline,
  341. please use a short form
  342. with MAINRUNNING}\gdef\rightheadline{MAIN title
  343. suppressed due to excessive length\hfil\hbox to2.5true cc{\hfil\folio}}%
  344. \else
  345. \gdef\rightheadline{\ignorespaces#1\unskip\hfil\hbox to2.5true
  346. cc{\hfil\folio}}\fi
  347. \catcode`\@=\active
  348.      \ignorespaces}
  349. %------------------------------------------------------
  350. \def\mainrunning#1{\message{Running head on right hand sides
  351. (MAINTITLE)
  352. has been changed}\gdef\rightheadline{\ignorespaces#1\unskip\hfil
  353. \hbox to2.5true cc{\hfil\folio}}}
  354. \def\authorrunning#1{\message{Running head on left hand sides (AUTHOR)
  355. has been changed}\gdef\leftheadline{\hbox to2.5true cc{\folio
  356. \hfil}\hfil\ignorespaces#1\unskip}}
  357. %------------------------------------------------------
  358. \def\subtitle#1{\vskip-5.7pt
  359.      \bgroup
  360. \textfont0=\tenbf \scriptfont0=\sevenbf \scriptscriptfont0=\fivebf
  361. \textfont1=\tams \scriptfont1=\tamss \scriptscriptfont1=\tbmss
  362.      \pretolerance=10000
  363.      \noindent
  364.      \bf
  365.      \rightskip 0pt plus 6em
  366.      \ignorespaces#1
  367.      \vskip10.8pt\egroup
  368.      \nobreak
  369.      \parindent=0pt
  370.      \everypar={\global\parindent=1.5em
  371.      \global\let\lasttitle=N\global\everypar={}}%
  372.      \global\let\lasttitle=A%
  373.      \ignorespaces}
  374. %------------------------------------------------------
  375. \catcode`\@=\active
  376. \def\author#1{\bgroup
  377. \pretolerance=10000
  378. \bf
  379. \noindent
  380. \ignorespaces#1\vskip.1cm\egroup
  381. {\def@##1{}%
  382. \setbox0=\hbox{\petit\kern2.5true cc\ignorespaces#1\unskip}%
  383. \ifdim\wd0>\hsize
  384. \message{The names of the authors exceed the headline, please use a }%
  385. \message{short form with AUTHORRUNNING}\gdef\leftheadline{%
  386. \hbox to2.5true cc{\folio\hfil}\hfil AUTHORS suppressed due to excessive
  387. length}%
  388. \else
  389. \xdef\leftheadline{\hbox to2.5true
  390. cc{\noexpand\folio\hfil}\hfill\ignorespaces#1\unskip}%
  391. \fi
  392. }\let\INS=E}
  393. \def\address#1{\bgroup\petit
  394. \ignorespaces#1\vskip8pt\egroup
  395. \catcode`\@=12}
  396. %---------------------------------------------------------------------
  397. \let\INS=N%
  398. % Aktionen, die bei Antreffen des @-Zeichens zu machen sind;
  399. % drei Faelle a) @ bei AUTHOR, b) 1.@ bei ADDRESS, c) alle weiteren @'s
  400. \def@#1{\if N\INS\unskip$\,^{#1}$\else\global\footcount=#1\relax
  401. \if E\INS\hangindent0.5\parindent\noindent\hbox
  402. to0.5\parindent{$^{#1}$\hfil}\let\INS=Y\ignorespaces
  403. \else\par\hangindent0.5\parindent\noindent\hbox
  404. to0.5\parindent{$^{#1}$\hfil}\ignorespaces\fi\fi}%
  405. \catcode`\@=12
  406. %-------------------------------------------------------------------
  407. \def\received#1{\bgroup\petit\noindent Received #1
  408. \vskip24pt\egroup}
  409. %---------------------------------------------------------------
  410. \long\def\summary#1{\noindent{\bf Summary. }\ignorespaces#1
  411. \vskip12pt}
  412. %---------------------------------------------------------------
  413. \def\keywords#1{\noindent{\bf Key words. }\ignorespaces#1
  414. \par}
  415. %---------------------------------------------------------------
  416. % Beginn Ueberschrift 1. Ordnung
  417. \def\titlea#1#2{\if N\lasttitle\else\vskip-28pt
  418.      \fi
  419.      \vskip18pt plus 4pt minus4pt
  420.      \bgroup
  421. \textfont0=\tenbf \scriptfont0=\sevenbf \scriptscriptfont0=\fivebf
  422. \textfont1=\tams \scriptfont1=\tamss \scriptscriptfont1=\tbmss
  423.      \pretolerance=10000
  424.      \noindent
  425.      \bf
  426.      \rightskip 0pt plus 6em
  427.      \setbox0=\vbox{\vskip23pt\def\fonote##1{}%
  428.      \noindent
  429.      \if!#1!\ignorespaces#2
  430.      \else\ignorespaces#1\unskip\enspace\ignorespaces#2\fi
  431.      \vskip18pt}%
  432.      \dimen0=\pagetotal\advance\dimen0 by-\pageshrink
  433.      \ifdim\dimen0<\pagegoal
  434.      \dimen0=\ht0\advance\dimen0 by\dp0\advance\dimen0 by
  435.      3\normalbaselineskip
  436.      \advance\dimen0 by\pagetotal
  437.      \ifdim\dimen0>\pagegoal\eject\fi\fi
  438.      \noindent
  439.      \if!#1!\ignorespaces#2
  440.      \else\ignorespaces#1\unskip\enspace\ignorespaces#2\fi
  441.      \vskip14pt plus4pt minus4pt\egroup
  442.      \nobreak
  443.      \parindent=0pt
  444.      \everypar={\global\parindent=\oldparindent
  445.      \global\let\lasttitle=N\global\everypar={}}%
  446.      \global\let\lasttitle=A%
  447.      \ignorespaces}
  448. %------------------------------------------------------
  449.  % Beginn Ueberschrift 2. Ordnung
  450.  \def\titleb#1#2{\if N\lasttitle\else\vskip-20pt
  451.      \fi
  452.      \vskip18pt plus 4pt minus4pt
  453.      \bgroup
  454.      \pretolerance=10000
  455.      \noindent
  456.      \it
  457.      \rightskip 0pt plus 6em
  458.      \setbox0=\vbox{\vskip23pt\def\fonote##1{}%
  459.      \noindent
  460.      \if!#1!\ignorespaces#2
  461.      \else\ignorespaces#1\unskip\enspace\ignorespaces#2\fi
  462.      \vskip10pt}%
  463.      \dimen0=\pagetotal\advance\dimen0 by-\pageshrink
  464.      \ifdim\dimen0<\pagegoal
  465.      \dimen0=\ht0\advance\dimen0 by\dp0\advance\dimen0 by
  466.      3\normalbaselineskip
  467.      \advance\dimen0 by\pagetotal
  468.      \ifdim\dimen0>\pagegoal\eject\fi\fi
  469.      \noindent
  470.      \if!#1!\ignorespaces#2
  471.      \else\ignorespaces#1\unskip\enspace\ignorespaces#2\fi
  472.      \vskip8pt plus4pt minus4pt\egroup
  473.      \nobreak
  474.      \parindent=0pt
  475.      \everypar={\global\parindent=\oldparindent
  476.      \global\let\lasttitle=N\global\everypar={}}%
  477.      \global\let\lasttitle=B%
  478.      \ignorespaces}
  479. %------------------------------------------------------
  480.  % Beginn Ueberschrift 3. Ordnung
  481.  \def\titlec#1{\if N\lasttitle\else\vskip-\baselineskip
  482.      \fi
  483.      \vskip18pt plus 4pt minus4pt
  484.      \bgroup
  485. \textfont0=\tenbf \scriptfont0=\sevenbf \scriptscriptfont0=\fivebf
  486. \textfont1=\tams \scriptfont1=\tamss \scriptscriptfont1=\tbmss
  487.      \bf
  488.      \noindent
  489.      \ignorespaces#1\unskip\ \egroup
  490.      \ignorespaces}
  491. %-------------------------------------------------------------------
  492.  % Beginn Ueberschrift 4. Ordnung
  493.  \def\titled#1{\if N\lasttitle\else\vskip-\baselineskip
  494.      \fi
  495.      \vskip12pt plus 4pt minus 4pt
  496.      \bgroup
  497.      \it
  498.      \noindent
  499.      \ignorespaces#1\unskip\ \egroup
  500.      \ignorespaces}
  501. %-------------------------------------------------------------------
  502. \let\ts=\thinspace
  503. \def\footnoterule{\kern-3pt\hrule width 2true cm\kern2.6pt}
  504. % Fussnoten-macros
  505. \newcount\footcount \footcount=0
  506. \def\advftncnt{\advance\footcount by1\global\footcount=\footcount}
  507. % Automatisch numerierte Fussnote, Fussnotentex in petit
  508. \def\fonote#1{\advftncnt$^{\the\footcount}$\begingroup\petit
  509. \parfillskip=0pt plus 1fil
  510. \def\textindent##1{\hangindent0.5\oldparindent\noindent\hbox
  511. to0.5\oldparindent{##1\hss}\ignorespaces}%
  512. \vfootnote{$^{\the\footcount}$}{#1\vskip-9.69pt}\endgroup}
  513. %-------------------------------------------------------------------
  514. \def\item#1{\par\noindent
  515. \hangindent6.5 mm\hangafter=0
  516. \llap{#1\enspace}\ignorespaces}
  517. %-------------------------------------------------------------------
  518. \def\itemitem#1{\par\noindent
  519. \hangindent11.5 mm\hangafter=0
  520. \llap{#1\enspace}\ignorespaces}
  521. %-------------------------------------------------------------------
  522. \def\newenvironment#1#2#3#4{\long\def#1##1##2{\removelastskip
  523. \vskip\baselineskip\noindent{#3#2\if!##1!.\else\unskip\ \ignorespaces
  524. ##1\unskip\fi\ }{#4\ignorespaces##2}\vskip\baselineskip}}
  525. % Lemma, Proposition, Theorem, Corollary
  526. \newenvironment\lemma{Lemma}{\bf}{\it}
  527. \newenvironment\proposition{Proposition}{\bf}{\it}
  528. \newenvironment\theorem{Theorem}{\bf}{\it}
  529. \newenvironment\corollary{Corollary}{\bf}{\it}
  530. %---------------------------------------------------------------------
  531. % Example, Exercise, Problem, Solution, Definition
  532. \newenvironment\example{Example}{\it}{\rm}
  533. \newenvironment\exercise{Exercise}{\bf}{\rm}
  534. \newenvironment\problem{Problem}{\bf}{\rm}
  535. \newenvironment\solution{Solution}{\bf}{\rm}
  536. \newenvironment\definition{Definition}{\bf}{\rm}
  537. %---------------------------------------------------------------------
  538. %Note, Question
  539. \newenvironment\note{Note}{\it}{\rm}
  540. \newenvironment\question{Question}{\it}{\rm}
  541. %---------------------------------------------------------------------
  542. %Proof, Remark
  543. \long\def\remark#1{\removelastskip\vskip\baselineskip\noindent{\it
  544. Remark.\ }\ignorespaces}
  545. \long\def\proof#1{\removelastskip\vskip\baselineskip\noindent{\it
  546. Proof\if!#1!\else\ \ignorespaces#1\fi.\ }\ignorespaces}
  547. %------------------------------------------------------------------
  548. \def\typeset{\petit\noindent This article was processed by the author
  549. using the \TeX\ macro package from Springer-Verlag.\par}
  550. \outer\def\byebye{\bigskip\bigskip\typeset
  551. \footcount=1\ifx\speciali\undefined\else
  552. \loop\smallskip\noindent special character No\number\footcount:
  553. \csname special\romannumeral\footcount\endcsname
  554. \advance\footcount by 1\global\footcount=\footcount
  555. \ifnum\footcount<11\repeat\fi
  556. \vfill\supereject\end}
  557.